<?php

if (!defined('BASEPATH'))
    exit('No direct script access allowed');

class M_Estudio extends Modelo {

    public $id = null;
    public $nombre;
    public $direccion;
    public $telefono1;
    public $telefono2;
    public $email;
    public $provincia;
    public $ciudad;

    function __construct() {
        parent::__construct();
        $this->tabla = 'estudios';
    }

    function setAttributes($datos = array(), $tipo = 'object') {
        return parent::_setAttributes(__CLASS__, $datos, $tipo);
    }

    function doArray() {
        return parent::_doArray(__CLASS__);
    }

    /**
     * Devuelve valores por defecto en un arreglo.
     */
    function getValidacion($edit = false) {
           if ($edit) {
                $valid = array(
                    array('field' => 'direccion', 'label' => 'Direccion', 'rules' => 'trim|required'),
                    array('field' => 'telefono1', 'label' => 'Telefono 1', 'rules' => 'trim|required'),
                    array('field' => 'email', 'label' => 'Email', 'rules' => 'trim|required|email'),
            );
           }else{
               $valid = array(
                    array('field' => 'nombre', 'label' => 'Nombre', 'rules' => 'trim|required'),
                    array('field' => 'direccion', 'label' => 'Direccion', 'rules' => 'trim|required'),
                    array('field' => 'telefono1', 'label' => 'Telefono 1', 'rules' => 'trim|required'),
                    array('field' => 'email', 'label' => 'Email', 'rules' => 'trim|required|email'), 
                      );
           }

        return $valid;
    }

    /**
     * Devuelve valores por defecto en un arreglo.
     */
    function valoresPorDefecto() {
        return array(
            'nombre' => '',
            'direccion' => '',
            'telefono1' => '',
            'telefono2' => '',
            'email' => '',
            'provincia' => 'Buenos Aires',
            'ciudad' => 'Mar del Plata',
        );
    }

    /**
     * Devuelve verdadero o false si el estudio tiene usuarios asociados.
     */
    function tiene_usuarios() {
        $this->db->select('count(id) as tiene');
        $this->db->from('usuarios');
        $this->db->where('estudioId = ' . $this->id);

        $results = $this->db->get();

        $resutado = $results->result_object();
        $resutado = $resutado[0];
        
        return ($resutado->tiene > 0) ? true : false;
    }

}